import UIManager from "./ui/UIManager";
import AssetsManager from "./asset/AssetManager";
import ResManager from "./res/ResManager";
import FGUIManager from "./ui/FGUIManager";
import ModuleManager from "./module/ModuleManager";

/**
 * 管理类
 * @author cls
 * @date 2020-01-20
 */
export default class Manager {
    /** UI管理（用了FGUI就不用这个） */
    private static _uiManager: UIManager = null;
    static get ui () {
        return this._uiManager;
    }

    /** FGUI管理 */
    private static _fGUIManager: FGUIManager = null;
    static get fui () {
        return this._fGUIManager;
    }

    /** 资源获取管理 */
    private static _resManager: ResManager = null;
    static get res () {
        return this._resManager;
    }

    /** 资源加载管理 */
    private static _assetManager: AssetsManager = null;
    static get asset () {
        return this._assetManager;
    }

    /** 模块管理 */
    private static _moduleManager: ModuleManager = null;
    static get module () {
        return this._moduleManager;
    }

    static init(){
        Manager._uiManager = new UIManager();
        Manager._fGUIManager = new FGUIManager();
        Manager._resManager = new ResManager();
        Manager._assetManager = new AssetsManager();
        Manager._moduleManager = new ModuleManager();
    }
}
